#ifndef		__BASE_ORA_H__
#define		__BASE_ORA_H__
//		BaseDB For ORACLE with OTL

#ifndef		OTL_ORA8I
#define		OTL_ORA8I
#endif
#pragma warning(disable:4275)
#pragma warning(disable:4348)
#include	"otlv32.h"
#include	"time.h"
#include	"baseexcep.h"

#ifndef TRACE
#ifdef	_DEBUG
#include	"stdio.h"
#define TRACE printf
#else
#define TRACE
#endif
#endif

#ifdef DLLEXPORT
#undef DLLEXPORT
#endif

#ifdef BASEDB_EXPORTS
#ifdef	DLL_EXPORT
#undef	DLL_EXPORT
#endif

#define DLL_EXPORT __declspec(dllexport)
#else
#ifdef	DLL_EXPORT
#undef	DLL_EXPORT
#endif

#define DLL_EXPORT
#endif

//typedef CDBException	CSybException	;

class	DLL_EXPORT COraConnect:public otl_connect
{
public:	//	user public method
	COraConnect();
	long Connect(const char * pServer,
		const char * pUser,
		const char * pPassword);
	long Disconnect();
	~COraConnect();
	long SQLExec(const char * pSQLCommand);
	long Use(const char * pDatabase);

public:	//public data for ct-library

};

class DLL_EXPORT COraStream:public otl_stream
{
public:	 //	user public method
	COraStream(long nBuffer,const char * pSQLCommand,
		COraConnect &Connect,long nExceptFlag=1);
	~COraStream();
	void Close();
	void Flush();
	long IsEof();
};

#ifndef	_MULTIDB

typedef	COraConnect CDBConnect;
typedef	COraStream CDBStream;

#endif	//_MULTIDB

#endif

